<!-- HTML header for doxygen 1.8.13-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.7"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Over The Air (OTA) Bootloader Abstraction Library: flash_area Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen_style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><a href="http://www.cypress.com/"><img alt="Logo" src="infineon_logo.png"/></a></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Over The Air (OTA) Bootloader Abstraction Library</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Home</span></a></li>
      <li><a href="modules.html"><span>API&#160;Reference</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)"
               onblur="searchBox.OnSearchFieldFocus(false)"
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;"
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('structflash__area.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-attribs">Data Fields</a>  </div>
  <div class="headertitle">
<div class="title">flash_area Struct Reference</div>  </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Description</h2>
<div class="textblock"><p>Provides abstraction of flash regions for type of use. </p>
<p>I.e. dude where's my image?</p>
<p>System will contain a map which contains flash areas. Every region will contain flash identifier, offset within flash and length.</p>
<ol type="1">
<li>This system map could be in a file within filesystem (Initializer must know/figure out where the filesystem is at).</li>
<li>Map could be at fixed location for project (compiled to code)</li>
<li>Map could be at specific place in flash (put in place at mfg time).</li>
</ol>
<p>Note that the map you use must be valid for BSP it's for, match the linker scripts when platform executes from flash, and match the target offset specified in download script. Structure describing an area on a flash device.</p>
<p>Multiple flash devices may be available in the system, each of which may have its own areas. For this reason, flash areas track which flash device they are part of. </p>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:acfe73a1f4f00fdf58129b21e5b71f5d4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acfe73a1f4f00fdf58129b21e5b71f5d4"></a>
uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structflash__area.html#acfe73a1f4f00fdf58129b21e5b71f5d4">fa_id</a></td></tr>
<tr class="memdesc:acfe73a1f4f00fdf58129b21e5b71f5d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">This flash area's ID; unique in the system. <br /></td></tr>
<tr class="separator:acfe73a1f4f00fdf58129b21e5b71f5d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d78c6ab00bab1bd0e825743925216a9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d78c6ab00bab1bd0e825743925216a9"></a>
uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structflash__area.html#a5d78c6ab00bab1bd0e825743925216a9">fa_device_id</a></td></tr>
<tr class="memdesc:a5d78c6ab00bab1bd0e825743925216a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">ID of the flash device this area is a part of. <br /></td></tr>
<tr class="separator:a5d78c6ab00bab1bd0e825743925216a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af98b8f20c0219bfcdd2fc20037845a99"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af98b8f20c0219bfcdd2fc20037845a99"></a>
uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structflash__area.html#af98b8f20c0219bfcdd2fc20037845a99">pad16</a></td></tr>
<tr class="memdesc:af98b8f20c0219bfcdd2fc20037845a99"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pad for Word length(32 Bytes). <br /></td></tr>
<tr class="separator:af98b8f20c0219bfcdd2fc20037845a99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44fbf0af3ba0e7fa1c3623e7d48e0739"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a44fbf0af3ba0e7fa1c3623e7d48e0739"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structflash__area.html#a44fbf0af3ba0e7fa1c3623e7d48e0739">fa_off</a></td></tr>
<tr class="memdesc:a44fbf0af3ba0e7fa1c3623e7d48e0739"><td class="mdescLeft">&#160;</td><td class="mdescRight">This area's offset, relative to the beginning of its flash device's storage. <br /></td></tr>
<tr class="separator:a44fbf0af3ba0e7fa1c3623e7d48e0739"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac580f8ab560582c02f12e96cb67b0e59"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac580f8ab560582c02f12e96cb67b0e59"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structflash__area.html#ac580f8ab560582c02f12e96cb67b0e59">fa_size</a></td></tr>
<tr class="memdesc:ac580f8ab560582c02f12e96cb67b0e59"><td class="mdescLeft">&#160;</td><td class="mdescRight">This area's size, in bytes. <br /></td></tr>
<tr class="separator:ac580f8ab560582c02f12e96cb67b0e59"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath">
    <ul>
        <li class="footer">
            Generated for <b>Over The Air (OTA) Bootloader Abstraction Library</b> by <b>Cypress Semiconductor Corporation</b>.
            All rights reserved.
        </li>
    </ul>
</div>
</body>
</html>
